The oscilloscope has been a tool of technicians, engineers and designers for analyzing time domain signals for over forty years. Typically, oscilloscopes analyze electrical signals and display the signals on a CRT screen as a function of amplitude (e.g., voltage magnitude) versus time. An oscilloscope combines the time measurement abilities of a frequency counter with the amplitude measurement capabilities of a multimeter to provide useful information concerning the electrical signal of interest.
The oscilloscope thus aids circuit designers in qualifying the performance of a new circuit or any circuit under test. Previously, oscilloscopes were generally analog in nature. In an analog oscilloscope, a signal enters through an attenuator which is generally a variable resistive-divider network. The attenuator brings the input signal to within an input operating range of a preamplifying circuit ("preamp").
The preamp and the attenuator scale the signal and apply any gain factors which are desired for the particular application and circuit being examined. The preamp circuit also drives a multiplexer which then drives a voltage amplifier and ultimately drives the vertical sweep of the cathode ray tube (CRT). Additionally, the preamp provides high to low impedance conversion so that the analog oscilloscope can be made virtually noise-free.
The trigger circuitry in the analog oscilloscope is operatively coupled to the horizontal sweep circuit of the CRT. The trigger circuit activates the horizontal sweep of the CRT when the trigger circuit acquires a trigger signal. The trigger signal is generally acquired from the input signal through a trigger comparator circuit which outputs a pulse when some predetermined trigger criteria are satisfied. The trigger pulse starts a capacitive charge that ramps a voltage level. This causes the beam in the CRT to move across the screen horizontally and thus display the signal characteristics of the input signal as a function of voltage versus time.
The ramp voltage which generates the horizontal sweep is typically obtained from a charging capacitor. However, in the real world it is difficult to linearly charge a capacitor with a current source to within acceptable high accuracy. Furthermore, capacitive charging is usually not constant and, thus, creates inaccuracies in the sweep. These factors contribute to inaccuracy in timing measurements.
The inaccuracy in timing measurements in typical analog oscilloscopes is about 3% of full scale. As an example of the timing measurement inaccuracies encountered with an analog oscilloscope, consider measuring a 2 nanosecond (ns) pulse width at 1 ns per division on the screen of a scope. The accuracy of this measurement is thus 0.3 ns or 15% timing error. Thus, analog oscilloscopes do not satisfy a long-felt need in the art for devices which can measure signal characteristics with high accuracy.
Additionally, factors besides the gain error must be taken cumulatively into account in order to make accurate voltage measurements with an analog oscilloscope. Analog oscilloscopes also exhibit significant position and parallax errors which reduce voltage measurement accuracy. Other factors, such as low storage tube capability and large bandwidth rolloff also contribute significantly to inaccurate voltage measurements with an analog oscilloscope. Analog oscilloscopes thus cannot satisfy a long-felt need in the art for measurement systems which provide highly accurate voltage and time measurements of electrical signals.
Digitizing or "digital" oscilloscopes have been developed to solve some of the aforementioned problems exhibited with analog oscilloscopes. For example, a typical digitizing oscilloscope's timing error is about 0.002% of full scale. A digitizing oscilloscope exhibits superior timing error with respect to the 3% typical timing error in an analog oscilloscope by using a crystal timebase instead of a charging capacitor and ramp voltage in the horizontal sweep circuitry. Other advantages such as the elimination of parallax error can be achieved with a digitizing oscilloscope.
Typically, a digitizing oscilloscope uses the same type of trigger comparator circuitry as found in an analog oscilloscope. Furthermore, similar attenuation and preamplifying inputs as found on the vertical paths of an analog oscilloscope may be provided for each channel of information on a digital oscilloscope. However, with a digitizing oscilloscope it is not necessary to use a multiplexer on the vertical paths. Digitizing oscilloscopes also operate in a significantly different fashion than analog oscilloscopes in acquiring and displaying data. A digitizing oscilloscope uses an analog-to-digital converter (ADC) which converts scaled, impedance converted analog data into digital words. The digital words are then stored in an acquisition memory so that they may be bused to a central processing unit (CPU) or microprocessor for eventual display on a CRT screen or use in other data acquisition and manipulation systems.
The ADC digitizes the analog signal data which comes over the various input channels. The digital information is then typically stored in a memory which may be, for example, a ring memory structure. A ring memory begins filling memory with data words at some location and continues adding more words around the ring. Ring memories offer an advantage when used in digitizing oscilloscopes since a full ring of digitized data taken prior to the trigger event is available to the system when "negative time," i.e. events which happen before a trigger, data acquisition is accomplished. The typical memory length for each digital ring in a digital oscilloscope is from 1 to 2 kbytes.
A crystal timebase, generally a clock circuit, updates the CPU in the digitizing oscilloscope and informs the CPU where in the ring memory the trigger event has occurred. The crystal provides accurate and stable timing for the analog oscilloscope. Circuitry in the crystal timebase determines the timing between the asynchronous trigger event and the next sample point because a trigger event can occur between sample points, not necessarily on a sample point. Since the sample clock and the timebase are derived from a crystal oscillator, the timing accuracy of a digitizing oscilloscope is very good; typically around 0.002%.
In an analog oscilloscope, the trigger event is always at the farthest point on the left-hand side of the CRT screen. However, in a digitizing oscilloscope the trigger event may be placed at the center of the CRT screen. Thus, with a digitizing oscilloscope the user sees half of the screen in a pre-trigger time, and half of the screen in a post-trigger time. A control is provided to the digitizing oscilloscope which allows the trigger event to be moved from left to right on the CRT screen by the user. This ability to alter the position of the trigger on the CRT screen provides a significant advantage over displays on analog oscilloscopes since it is possible to home in on a particular event around the trigger reference point on the CRT screen with a digitizing oscilloscope.
Generally, there are two ways to acquire digitized data with a digitizing oscilloscope. The first way is by real time acquisition, sometimes referred to as "single-shot sampling". Single shot sampling digital oscilloscopes sample an input waveform as fast as the ADC in the oscilloscopes sample and acquire all of the digitized data on a single trigger. State-of-the-art digitizing oscilloscopes using single-shot sampling data acquisition generally allow about one "Giga sample" (GSa/s) per second at 6 to 8 bits resolution. Single-shot sampling is possible with both repetitive and non-repetitive signals. However, single-shot digitizing oscilloscope are generally much more expensive than other types of digitizing oscilloscopes.
Single-shot data acquisition digitizing oscilloscopes exhibit significant disadvantages to digitizing oscilloscopes which utilize other types of sampling. For example, it is very easy to miss glitches between sampling points with a single-shot digitizing oscilloscope. These high-frequency glitches are also missed when a similar bandwidth analog oscilloscope is used. Additionally, the bandwidth of a single-shot oscilloscope is limited by the sampling frequency. Furthermore, the timing resolution of a single-shot digitizing oscilloscope is limited by the speed of the ADC. Thus, single-shot sampling digital oscilloscopes do not satisfy a long-felt need in the art for digital oscilloscopes which provide accurate and efficient analysis of electrical input signals.
The second way in which data may be acquired by a digitizing oscilloscope is with "repetitive sampling." Repetitive sampling is used when a repetitive waveform is present. As known by those skilled in the art, a repetitive waveform is any waveform which has a regular period. Repetitive sampling systems do not make single-shot measurements well because they are designed with slower ADCs. This allows better vertical resolution of the repetitive signal. An example of a digital oscilloscope which utilizes both single-shot and repetitive sampling in two different modes is the HP 54111D digital oscilloscope available from the Hewlett-Packard Company, Palo Alto, Calif.
There are essentially two kinds of repetitive sampling used by digital oscilloscopes. The first kind of repetitive sampling is called "sequential repetitive sampling". In sequential repetitive sampling, only one sample of the signal is digitized on each occurrence of the trigger signal. With each successive trigger, the sampling point is delayed further from the trigger point. After many samples are acquired and digitized, the signal is reconstructed in the oscilloscope's digital memory. Sequential sampling works by delaying data acquisition by a specified amount of time after the trigger event occurs, then taking a sample. The amount of the delay starts at zero seconds and evenly increments depending on the capability of the digitizing oscilloscope.
With sequential repetitive sampling, timing resolution is excellent compared to real-time, single-shot sampling in digitizing oscilloscopes. Additionally, sequential sampling does not miss glitches unless the glitches occur in time periods less than the sampling delay resolution of the timebase. Furthermore, the bandwidth in a digitizing oscilloscope utilizing sequential repetitive sampling is not limited by the sampling frequency, but rather is merely limited by the particular capabilities of the preamplifiers and attenuators in the front end of the digital oscilloscope.
However, there are several disadvantages inherent in sequential repetitive sampling digital oscilloscopes. The first of these disadvantages is the need to wait for a trigger signal before the sample is taken which does not provide the desirable capability of viewing negative time without a delay line. Furthermore, there is no single-shot capability with sequential sampling because each sample point requires a full trigger event. Additionally, with slow repetition signals, triggers occur slowly, and thus, acquisition of a complete representation of the signal for display takes a long time to complete.
The second type of repetitive sampling is called "random repetitive sampling." In random repetitive sampling, the ADC is always sampling at the same rate. Thus depending upon the "samples per division" (Sa/DIV) of the screen, a different number of samples per trigger may be obtained. The waveform in random repetitive sampling is built up over multiple trigger acquisitions. Random repetitive sampling is denoted as "random" since the trigger event is asynchronous with respect to the sample clock. This means that each trigger yields a group of samples that are shifted in phase between other groups of samples. After each acquisition, the data collected on that acquisition is time correlated by a time interpolator to the trigger event and to the older data points acquired and placed on the screen. Random repetitive sampling is dissimilar to sequential repetitive sampling to the extent that the signal is constantly being sampled and digitized at a rate determined by the digital oscilloscope sampling clock.
Random repetitive sampling provides several advantages over sequential sampling. In random repetitive sampling digital oscilloscopes, the user can view sampling in negative time without the need for a delay line. Furthermore, random repetitive sampling digital oscilloscopes exhibit higher throughput at lower sweep speeds as compared to sequential sampling digital oscilloscopes.
However, random repetitive sampling exhibits significant problems when a digital oscilloscope samples high frequency input signals. At fast sweep speeds, the probability of acquiring a small display window is reduced as compared to acquiring a small display window in a sequential repetitive sampling system. Therefore, the throughput of random repetitive sampling digital oscilloscopes is reduced at fast sweep speeds. Thus, random repetitive sampling digitizing oscilloscopes do not have optimal throughput when a user needs fine time resolution for a measurement. As used herein, the term "fine time resolution" is defined with respect to the actual sample rate of the instrument being used.
This point may be illustrated by the following example. Consider a random repetitive acquisition system where the actual sample rate is 40 MHz and the screen width is 1 ns (100 psec/DIV). The time between samples is thus 1/40 MHz which is equal to 25 ns -- 25 times as large as the time interval being examined. Since the system is sampling randomly with respect to the signal, the system is also sampling randomly with respect to the trigger. The trigger can thus occur anywhere within the 25 ns sampling interval and there will be a probability of 1/25 that a sample will fall within the 1 ns screen window. Therefore, on the average, only one in 25 acquisitions results in a usable sample.
This is a poor result because the overhead time required to perform an acquisition is not negligible. It takes on the order of microseconds to determine if any of the sample points actually fall on the screen and to begin a new acquisition. In modern random repetitive acquisition systems in digitizing oscilloscopes, there is no previously known information about the signal and thus no possibility of changing the probability of 1 out of 25 that a trigger will generate a point on the screen.
If, for example, the triggers are occurring at a 15 MHZ rate, a trigger period of 67 ns is achieved. After the system begins to look for a trigger, the average time to find a trigger is approximately one-half of 67.0 ns, or 33.5 ns. If one assumes an acquisition overhead time of about 6.0 .mu.s, which is typical for a modern, state-of-the-art digitizing oscilloscopes, it takes approximately an average of: EQU 25 acquisitions.times.(6.0 .mu.s+1/2.times.67.0 ns)=150.8 .mu.s,
to acquire a usable sample. This time period occurs since, for every acquisition of data, a 6.0 .mu.s overhead period during which the CPU determines whether that trigger has resulted in a usable sample is tacked on to the acquisition time. This is a highly inefficient way to acquire samples and requires the microprocessor in the digitizing oscilloscope to spend an inordinate amount of processor time in determining whether each acquisition has resulted in usable data. If this acquisition time could be reduced or eliminated for any trigger which does not acquire a useable sample, the throughput of the system could be greatly increased and the microprocessor freed to perform other tasks during the acquisition procedure. Modern random repetitive signal acquisition systems cannot reduce or eliminate this problem.
Present random repetitive sampling digitizing oscilloscopes and systems thus do not fulfill a long-felt need in the art for random repetitive sampling acquisition systems which minimize the reduction in throughput of the system as the sweep speed is increased. Previous trigger detection circuits in random repetitive data acquisition digitizing systems do not -- and cannot -- enhance efficiency in random repetitive sampling systems and provide increased throughput. A long-felt need in the art therefore exists for trigger qualifying systems and circuitry in random repetitive acquisition systems which increase system throughput and provide more efficient use of microprocessing time.